package com.yupi.springbootinit.service;

import com.yupi.springbootinit.model.entity.DeviceInfo;
import com.yupi.springbootinit.model.vo.DeviceHistoryVO;
import com.yupi.springbootinit.model.vo.DeviceOverviewItemVO;
import com.yupi.springbootinit.model.vo.DeviceStatusVO;

import java.util.List;

public interface DeviceDataService {

    /**
     * 设备概览
     */
    List<DeviceOverviewItemVO> getOverview();

    /**
     * 获取单台设备最新状态
     */
    DeviceStatusVO getLatestStatus(Integer deviceId);

    /**
     * 查询历史数据
     */
    DeviceHistoryVO getHistory(Integer deviceId, String fieldsCsv, String startArg, String aggArg);

    /**
     * 扩展设备状态信息（进度、粉末使用百分比、开始时间等）
     */
    DeviceStatusVO enrichStatus(DeviceStatusVO vo, DeviceInfo device);
}